package com.jimmy.ioc.team;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

/**
 * @version 1.0
 * @ ClassName BookService
 * <p> TODO
 * @ author JIMMY
 * @ Date 2020/12/7 0007 下午 7:28
 */
@Service
public class BookService {

//   @Qualifier("bookDao")    //@Qualifier("bookDao")：使用@Qualifier指定需要装配的组件的id，而不是使用属性名   还有一个更强大的primary首先bean
    @Autowired

    //@Resource(name="bookDao2")   // Spring还支持使用@Resource(JSR250)和@Inject(JSR330)[java规范的注解]
    //    @Inject
    private BookDao bookDao; //1）、默认优先按照类型去容器中找对应的组件:applicationContext.getBean(BookDao.class);找到就赋值
//    * 		2）、如果找到多个相同类型的组件，再将属性的名称作为组件的id去容器中查找
// * 							applicationContext.getBean("bookDao")
    @Override
    public String toString() {
        return "BookService [bookDao=" + bookDao + "]";
    }
}
